#pragma once
#ifndef _fastbird_InputListener_header_included_
#define _fastbird_InputListener_header_included_

namespace fastbird
{
	class IMouse;
	class IKeyboard;

	class IInputListener
	{
	public:
		enum INPUT_LISTEN_CATEGORY
		{
			INPUT_LISTEN_PRIORITY_UI,
			INPUT_LISTEN_PRIORITY_CAMERA,
			INPUT_LISTEN_PRIORITY_INTERACT,

			INPUT_LISTEN_PRIORITY_COUNT
		};
		virtual ~IInputListener(){}
		virtual void OnInput(IMouse* pMouse, IKeyboard* pKeyboard) = 0;

		INPUT_LISTEN_CATEGORY mFBInputListenerCategory;
		int mFBInputListenerPriority;
		
	};
}

#endif //_fastbird_InputListener_header_included_